Documentation of TimeGuardian

Version 1.2, 11.1.1995

written by Markus Matern, Gerri Körner and Jürgen Matern

translated by Gerri Körner and Markus Matern

This is the documentation for the package TimeGuardian Version 1.2, 11.1.1995. This description refers to the following programs:

• TGCron Version 1.50, 5.1.1995

• TimeGuardian Version 1.50, 5.1.1995.

G.Körner, M.Matern, J.Matern

Copyright \begin{matrix}c \\ ◯ \end{matrix} 1993-95 by G.Körner, M.Matern, J.Matern

1 Introduction

Welcome to the documentation of the program package TimeGuardian.

This package may be freely distributed, as long as no unreasonable copying and swapping fees are collected. For any other type of distribution you must obtain the written permission of the author. This package is shareware, if you want to use the programs of this package permanently, you have to register, see Section 1.5 [How can I register for TimeGuardian?], page 3 for further information.

This program package may be included in software collections, providing that the previously mentioned conditions are met.

This program package is provided without warranty of any kind. In no event will the author be liable for direct, indirect, or incidental damages resulting from any defect of the program or of its documentation. The users are hereby warned that such damage might occur.

1.1 What is TimeGuardian?

TimeGuardian is a program package which makes it easy for you to automate processes which have to be done over and over again. It reminds you about important events or allows you to start programs or scripts at predefined points of time. You also may write log files to disk, where you can see when your computer was switched on.

1.2 The Features of TimeGuardian

• easily configurable

• providing a GUI for event input

• reminder functions using requesters and alerts

• daily actions

• weekly actions

• monthly actions

• yearly actions

• events after time intervals relating to the point of startup

• detailed evaluation for the points of startup time • graphical representation for the points of startup time

• precise information for special days

• Localisation

• Commodity

  • Installer

• MUI-GUI

• online help

  • AREXX

1.3 What Can I Do with TimeGuardian?

The package provides you two main functions which may be used seperately from each other.

The first function provided is to save on disk every time your computer was turned on and off. You get a complete log file when anyone turned on your computer. Also you may choose to log different projects. This means that you can see in the log files when you worked on a certain project, e.g. private work and business work. You can analyse these log files easily with the graphical user interface, getting a quick overview while working with your computer on certain projects.

The second function that is provided by this package is a function to start actions (commands or scripts) that you want to be executed regularly or at specified dates or hours. Moreover you can start programs or scripts e.g. once a day or once a year . . .. A special function of this feature is the reminder. It reminds you by a requester or an alert, you simply enter the text and point of time for such events, the rest will be done for you by TimeGuardian.

1.4 What Do I Need to Be Able to Use TimeGuardian?

If you want to use all features of the package TimeGuardian, you need some other public domain or shareware packages which can’t be included in this package because of different reasons:

• OS version >= 2.0 You need a Workbench and Kickstart version greater or equal to 2.0 by all means. If you are not running those two versions, you can’t install this package. If you want to know which versions you have installed, enter in a ‘Shell’: ‘version’. You should get the following results:

    ‘Kickstart version 37.175, Workbench version 37.XX’ or greater numbers! You need a

Workbench version >= 2.1 if you want to use the localized graphical user interface!

• MUI >= 2.0 The program package MUI has to be installed to be able to use the graphical user interface of the program TimeGuardian. You can use an unregistered version of MUI while you are testing the program package. If you want to use TimeGuardian regularly, please register for both packages MUI and TimeGuardian. For further information on how to do this, see Section 1.5 [How can I register for TimeGuardian?], page 3 and Section 3.1 [Where can I obtain MUI?], page 42.

• Installer

You need this program for an easy installation of the package. It is included with many other program packages. To get information where you can obtain the program Installer, see Section 3.2 [Where can I obtain Installer?], page 42.

• Amiga-Guide

You need this program in order to use a feature of the graphical user interface of TimeGuardian called online help. If you want to get information on how to obtain this package, see Section 3.3 [Where can I obtain Amiga-Guide?], page 42.

1.5 How Can I Register for TimeGuardian?

To be able to use the background program TGCron on a certain day as long as you want, you will need a certain file, which you will only get by registering. This file contains your name and is especially generated for you. If this file is missing, you will only be able to use the program about 3 hours a day.

To obtain your personal key file, please send the registration fee and form (see Appendix A [Registration Form], page 53) to one of the addresses below. If you send the money, be sure that one can’t see the notes inside! Put the notes inside the registration form. Please refer to the following table for the amount of your registration fee:

• Inside Germany: − Cash: DM 20 − Bank draft: DM 20 − National Cheque: DM 20 − Eurocheque: DM 20

• Inside Europe: − Cash: DM 20 oder US$ 15 − Eurocheque: DM 20 oder US$ 15 − Cheque: DM 40 oder US$ 27 (cashing is very expensive!)

• Outside Europe: − Cash: US$ 15 − Cheque: US$ 27 (cashing is very expensive!)

Here are the addresses of the authors:

Gerri Körner Kulturenweg 6 D-87642 Buching

Markus Matern Max-Wieland-Strasse 13 D-89134 Blaustein

You will receive your personal key file and the newest version of the program package on disk. If you don’t send your fee in a way mentioned above you won’t become a registered user!

Your payment is for the current version of the program package TimeGuardian. You are neither entitled to get newer, nor to get enhanced program versions. You don’t have to register again for possible new versions of this package. The personal key files will stay valid for new versions. Possible enhancements of the package will depend on the number of registrations.

You can’t reach us by phone, therefore if you have questions, please send an international reply coupon to one of the adresses above. The better way is to send an e-mail to:

               ‘Gerri.Koerner@student.uni-ulm.de’ or
                ‘Markus.Matern@student.uni-ulm.de’.

Unfortunately we will not be able to answer any questions asked in other ways.

2 The Programs of the Package TimeGuardian

The package TimeGuardian basically consists of two programs, which are needed both for proper work. They will be described later. You need the preferences program TimeGuardian if you want to change the configuration of the cron^{1} which runs in the background or to analyze the files written to your disk. The second program is TGCron. You should start it every time your computer boots, if you want to use the package in a sensible way. TGCron uses two small modules for rarely needed functions. These modules won’t be described here as they are not for public use. See Chapter 4 [How can I install TimeGuardian?], page 44, for further information.

For further information on programs not included in this package refer to Chapter 3 [Where do I Get the Support Programs?], page 42.

2.1 The Program TimeGuardian

First of all I want to say something general about the documentation of TimeGuardian:

A GUI should help to work easier with a program and use its features without detailed knowledge. Many people draw the conclusion that they dont’t have to read its documentation. That’s definitely wrong. I tried to arrange many parts of this program to be operated without any basic knowledge. Nevertheless I advise you to read this documentation once, after that you may use the online help function. It will display the corresponding text to any object of the GUI from the file ‘TimeGuardian.guide’. Because of its many features and the very powerful syntax of the CronTable^{2} , it is impossible to develop a GUI which may be used without any basic knowledge.

The preferences program TimeGuardian was designed to help the user to modify the configuration of the background program easily. It provides you a graphical user interface to do so. If you want to change the configuration, just start TimeGuardian.

1 A cron is a program which executes programs or scripts at certain user-specified points of time

2 A CronTable is an ASCII file which contains command lines for cron program.

• From Workbench: Doubleclick on the corresponding icon. If you followed the installation instructions, you will find the icon in your drawer ‘Prefs’ of your bootpartition.

• From CLI: Just enter ‘<path>/TimeGuardian’. Instead of <path> you have to enter the name of the drawer in which you have installed the package TimeGuardian.

• If you entered in the icon of TGCron at the installation drawer a ‘CX_POPKEY’ tooltype (not in the WBStartup drawer), you may use this short cut to pop up the GUI of TimeGuardian while TGCron is running.

The following is a description of the different elements of the graphical user interface and their functions. Gadgets are elements that start an action immediately. They may be activated by clicking on them with the mouse or by pressing the underlined character of their name. You have to press always a single key on the keyboard, even if a capital letter is underlined. Pages are gadgets which activate other gadgets. Depending on the preferences of MUI, you may see all the page-gadgets together or each at a time by activating the visible page-gadget. For browsing through the pages you may also use the keyboard. The combination ALT <ARROW LEFT> or ALT <ARROW RIGHT> allows you to step one page forward or back.

2.1.1 The Menus of the Program TimeGuardian

Some functions of the program may be activated using gadgets and menus. Moreover the basic preferences for the cron have to be done on two windows which may only be activated using the menu. For a further description see below. The functions that are available via gadget and menu will be described at the corresponding gadgets. The menu structure of the preferences program looks like follows:

• Project − Open… − Save as… − —————– − About − User − Iconify − —————– − Quit

• Edit − Reset to Defaults − Last Saved − Restore

• Settings − Create Icons?

• Pages − Timer − Special − Global Statistics − Daily Statistics

• Preferences − Cron Setup − Log Path & Names − —————— − LogFiles enabled?

2.1.1.1 The Menu ‘Project⇒Open…’

Selecting this menu item opens a file-requester which allows you to load a configuration file. If you don’t select a TimeGuardian- config-file, an error message will appear. After the file has been loaded succesfully, all items of the graphical user interface will show the new configuration. After that you may modify, save or use the new settings in the usual way.

2.1.1.2 The Menu ‘Project⇒Saveas…’

By activating this menu, you may save your current settings under any name you choose. The configuration will just be saved, it will not be used by a current running cron. You have to select the gadget ‘Save’ or ‘Use’ if you want to do so. This menu is provided to be able to change quickly between often used configuratons (e.g. one configuration for private work and one for business work). Each configuration has its own name which allows you to associate it with the corresponding project. If the menu ‘Settings⇒Create Icons?’ is activated an icon will be generated for each configuration you save. If you want to use one of your saved configurations you have to doubleclick on the corresponding icon. This configuration is only used as long as you don’t boot. If you want to use this configuration permanently by doubleclicking the icon, then change the ‘Tool Types’ of the icon to ‘ACTION=SAVE’.

If you saved a configuration without an icon you have to activate this configuration as follows: Either load the configuration in the preferences program and press ‘Use’ or enter the two following lines in a

shell or a script: ‘copy Name.config env:TimeGuardian.config’ and ‘setenv TimeGuardian.com

config’. The configuration will stay active until you reboot. (For a permanent change press the

‘Save’ gadget or you ‘copy Name.config envarc:TimeGuardian.config’ and enter the two lines

above.)

2.1.1.3 The Menu ‘Project⇒About’

Activating this menu item opens the information window which you have already seen during the startup of the program. The difference is that you have to close the window by hand now. You may do this by clicking on the ’OK’ button at the bottom of the window. During startup, the window will dissapear automatically after moving the mouse or pressing any key.

The window shows the copyrights, the shareware reference and the reference to MUI.

2.1.1.4 The Menu ‘Project⇒User’

If you activate this menu you will be shown an information window in which the following message is displayed

This TimeGuardian is registered to:

Firstname Lastname Street Post code Location Country

if you are a registered user otherwise, if you haven’t registered yet, the display will read

This is a unregistered version of

TimeGuardian

you have to register after an evaluation time of 14 days!!

If you want to know how to register for TimeGuardian, see Section 1.5 [How can I register?], page 3.

2.1.1.5 The Menu ‘Project⇒Iconify’

If you activate this menu, the program will close the window of the graphical user interface and appear as an icon on the Workbench. If you want to reactivate the window, you have to doubleclick the icon. You may also use the third gadget from the right on the upper window border.

2.1.1.6 The Menu ‘Edit⇒ResettoDefaults’

If you click on the gadget ‘Default’, the default values will appear. These are the original default settings which were shown to you after your first startup after installation.

2.1.1.7 The Menu ‘Edit⇒LastSaved’

If you activate this menu, the configuration file that you saved with the gadget ‘Save’ will be loaded. When the file is loaded succesfully, you may edit, use or save it in the usual way.

2.1.1.8 The Menu ‘Edit⇒Restore’

With the menu item‘Restore’ you may cancel changes you may have made before. It’ll work as long as you did not use one of the two gadgets ‘Save’ or ‘Use’.

2.1.1.9 The Menu ‘Settings⇒CreateIcons?’

If this menu item is checkmarked, each time you save a configuration with the menu ‘Project⇒Save As’, an icon for the configuration will be created.

2.1.1.10 The Menu ‘Preferences⇒CronSetup’

This menu item allows you to open the window where you may enter the basic setup of the cron. You will see the following buttons and sliders.

The Slider ‘Startuptime’

You may use this slider to enter the time in minutes, your computer needs to boot, rounded to the next full minute. If your system needs for example two minutes and 30 seconds to start, you would have to enter three here. This is necessary, as the background program has to decide whether the computer was switched on or had a reset. The program decides, that the computer was switched on, if the difference between the last saved value and the actual time is greater than the value that you entered with the slider. Otherwise a reset is supposed.

The Slider ‘Increment’

This value is the time in minutes, when the background program saves, that the computer was still working. The smaller you make this value, the more accurate are the values in the three saved log-files. If you enter two, for example, every two minutes will be saved, that the computer was still working. The greatest error which may occur for this value will be two. The greater the entered value, the inaccurate is the supposed switch off moment, as the last saved value for a running system is taken.

The Slider ‘LogHistory’

Select how many month will be stored in the data files. At the beginning of every month an external module will be started which deletes all outdated entries from the data files. You may store the datas of 2 years (=24 month), this is the predefined maximum. But you may set this value to one year for example and make a copy of the datafiles at the beginning of every new year. You won’t loose any data this way.

The Gadget ‘DateFormat’

With this gadget you may enter nine different formats for the date, that will be used, when saving the time in the different files. The following formats may be selected:

     `tt-mm-jj', `tt.mm.jj', `tt/mm/jj',
     `mm-tt-jj', `mm.tt.jj', `mm/tt/jj',
     `jj-mm-tt', `jj.mm.tt', `jj/mm/tt'.

‘tt’ represents the day of the month, ‘mm’ the short form of the month and ‘jj’ the last two digits of the year. The short form of the month will be saved in the selected language.

The Gadget ‘Locale’

Select a language for the background program TGCron with this gadget. The configuration program will always appear localized in the language you have selected in the language preferences program (of course you need an approriate file ‘TimeGuardian.catalog’ installed in your drawer ‘Locale:Catalogs/language’). If this file is missing or if you use a workbench version < 2.1 the program will run in the default language English. This distribution contains only the default language English and a German catalog.

You may select six different settings:

• localized:

Use this if you have a localized workbench and you want the files for the time functions to be written in this language. You need the appropriate file for your language!

• English:

By selecting this or one of the following items, the text will be written in the selected language to the files.

• German, French, Italian, Spanish: time functions: selected language

If you are intrested in translating the text of the graphical user interface into one of the languages above or into your own, please get in contact with one of the addresses at which you can register for the package, see Section 1.5 [How can I register ?], page 3. As a reward you will get a registered version of TimeGuardian for free. Please contact one of us at all events, before you start to translate!

The Slider ‘CronTaskPriority’

It is possible that the cron program won’t work precise if the CPU usage is 100% (e.g. running a ray-tracing program). Therefore you may change the task priority of TGCron here. You should select a value higher than the priority of the program which uses the whole CPU power. The default value of 4 should work fine anyway.

The Gadget ‘Use’

If you choose this button for closing the window your current changes will be used. If you entered something wrong and don’t want to use the changes click on the ‘Cancel’ button.

The Gadget ‘Cancel’

If you click on ‘Cancel’ instead of ‘Use’ your current changes will get lost and everything will be reset to the previous values.

2.1.1.11 The Menu ‘Preferences⇒LogPath&Names’

This menu item opens the window where you may enter the path and the names of the log files.

The String Gadget ‘LogPath’

In this string gadget you have to enter the drawer or partition, where the cron program is supposed to save when the computer has booted and how long and at what time it was switched on. You can enter the names of these three files in the following string gadgets.

If you want to change the path, activate the string gadget and enter the desired path. If the path does not exist, a requester will popup which allows you to create it. When you activate the string gadget with the gadget to the right of it, a file requester pops up, where you can easily select the path.

The String Gadget ‘Runtime’

Enter the file in which TGCron is supposed to save, how long the computer was switched on and at which dates. If the file doesn’t already exist, it will be created in the drawer or partition you selected at the gadget ‘Log Path’.

The entry for a day will be written on the following day, when you switch your computer on. That implies, if you look at this file the actual day will not be shown.

The file is saved in ASCII format and may be loaded with any editor or text viewer. A sample file could look like this:

     Wed   04-May-94 Runtime:  2 h  47 min.
     Thu   05-May-94 Runtime:  2 h  43 min.
     Mon   09-May-94 Runtime:  3 h  11 min.

The date format may be changed, see Section 2.1.1.10 [The menu ‘Preferences⇒Cron Setup’], page 9, section The Gadget ‘Date Format’ for furher information.

The String Gadget ‘Starts’

Here you have to enter the name of the file in which TGCron is supposed to save the time when the computer has been reset. The file will be created in the drawer described above if it doesn’t exist already.

The values in the file will only show your real boot times if you start the program TGCron every time your computer is booting. See Chapter 4 [How can I install TimeGuardian?], page 44 how to do this.

If you start TGCron manually, you may, each time you work on a certain project, start the program. Thus you have a protocol for this specific project. You can do this in a another way, too. Start the program TGCron everytime and change the configuration for different projects. Afterward define a configuration for a certain project and save it using the menu ‘Project⇒Save As’. When you start working on the project you use the menu ‘Project⇒Open’ to load it. For further information, see Section 2.1.1.1 [The menu ‘Project⇒Open’], page 7 and Section 2.1.1.2 [The menu ‘Project⇒Save As’], page 7.

The file is saved in ASCII format and may be loaded with any editor or text viewer. A sample file could look like this:

     Wed   04-May-94 15:26
     Thu   05-May-94  8:24
     Thu   05-May-94 14:26
     Thu   05-May-94 15:22
     Thu   05-May-94 16:01

The date format may be changed, see Section 2.1.1.10 [The Menu ‘Preferences⇒Cron Setup’], page 9, part The Gadget ‘Date Format’ for furher information.

The String Gadget ‘OnOff’

Enter the file in which TGCron is supposed to save the times the computer was switched on and off. If the file doesn’t already exist, it will be created in the drawer or partition mentioned above.

The entry for the current switch on will be appended to the file the next time the computer will be switched on. Such a file could look like the following:

     System switched on:   Wed   04-May-94 17:38
     Resets:  0
     System switched off:  Wed   04-May-94 19:26
     System switched on:   Thu   05-May-94  8:24
     Resets:  0
     System switched off:  Thu   05-May-94  9:25
     System switched on:   Thu   05-May-94 14:26
     Resets:  2
     System switched off:  Thu   05-May-94 16:11

The date format may be changed, see Section 2.1.1.10 [The Menu ‘Preferences⇒Cron Setup’], page 9, part The Gadget ‘Date Format’ for further information.

The decision whether the computer was switched on or had a reset will be made depending on the settings of the slider ‘Startuptime’, see Section 2.1.1.10 [The Menu ‘Preferences⇒Cron Setup’], page 9, part The Slider ‘Startuptime’ for further information.

The Gadget ‘Use’

If you choose this button for closing the window your current changes will be used. If you entered something wrong and don’t want to use the changes click on the ‘Cancel’ button.

The Gadget ‘Cancel’

If you click on ‘Cancel’ instead of ‘Use’ your current changes will get lost and everything will be reset to the previous values.

2.1.1.12 The Menu ‘Preferences⇒LogFilesenabled?’

If this menu item is checkmarked, the cron program will create a logfile how long and at which point of time your computer was running. You have to choose a directory in the ‘Log Path & Names’ window, even if you don not use the LogFile feature, as some of the special Cron abilities need information from the ‘TG_private’ subdirectory. Data are only written at the first startup of a day to this drawer, after that TGCron will behave like a pure Cron/Reminder.

2.1.2 The Page ‘Timer’

This page is shown if you carry out one of the following actions on the graphical user interface:

• Press the gadget ‘Timer’

• Select the menu ‘Pages⇒Timer’

• Press the keys AMIGA 1

• Press the keys ALT <ARROW RIGHT>, while you are on the page ‘Daily Statistics’

• Press the keys ALT <ARROW LEFT>, while you are on the page ‘Special’

You may select all time dependand functions of TGCron on this page. You will see two main groups: The CronTable function and the interval timer.

If you started TimeGuardian for the first time the all string gadgets will be ghostet. You have to choose the type of your timer function with the cycle button at the top of the page.

2.1.2.1 The Gadget ‘Type’

By using this gadget you may select which type of background actions will take place:

• None:

Neither the command/ script in the string gadget ‘Interval’, nor the CronTables will be executed.

• Cron Table:

Only the two CronTables will be executed. If you want ot enter such a file use a text editor or the very comfortable ‘scheduler’, you may get into it by clicking on one of the ‘Edit’ buttons.

• Interval:

Only the command/ script in the string gadget ‘Interval’ will be executed in the selected interval as long as the computer is working.

• Cron Table & Interval: Both, commands/ scripts and CronTables will be executed. t

2.1.2.2 The String Gadget ‘Default/Current’

You may select a CronTable^{3} file here where you may store which programs have to be started at certain times.

There are two different CronTables provided on this page which may be used separately from each other. Thus it is easier for you to generate one CronTable for actions which will happen regardless of the current configurations, the other will depend on it. The difference between both them is the fact that the ‘Default’ CronTable won’t be reread when you change the configuration of running cron. This may happen if you switch to another project you are working on. The ‘Standard’ CronTable will always be reread whenever you change your configuration. A notification is set on both files, therefore the CronTable will be reread if you save something the file in any way.

This file has to be an ASCII file with a certain format that will be described at Section 2.2.7 [‘CronTable-Syntax’], page 33. It is possible to use samples in this file or certain days, months, etc.

If you click on the gadget right beside the string gadget, a file requester will pop up with which you may easily select the desired file. You may access these string gadgets only if you have selected ‘CronTable’ or ‘CronTable & Interval’ at the ‘Type’ cycle button. Otherwise the string gadgets will be ghosted.

3 The format is the same as used in Un*x,has been enhanced by some very useful features.

If you click on one of the ‘Edit’ buttons right beside the string-gadgets you will get into the program ‘TGScheduler’, refer to Section 2.2 [TGScheduler], page 24. This program will help you with its graphical user interface to create the very cryptic CronTable files.

2.1.2.3 The String Gadget ‘Interval’

You may select a file here that will be executed in regular time intervals. Therefore this entry may be used to save the project you are currently working on every ten minutes. The point of time this will happen are always relative to the boot time, i.e. (boot time + n * interval). To change the interval see Section 2.1.2.4 [The sliders ‘Hours’/ ‘Minutes’], page 17.

If you press the gadget to the right of the string gadget, a file requester will pop up with which you may select the desired file. You may change the entry in this string gadget only if ‘Interval’ or ‘CronTable & Interval’ has been selected at the ‘Type’ gadget, otherwise the gadget will be ghosted. You may select an executable or a script in ASCII format. If you want to use a script the ‘S- flag’ has to be set. To set this flag for the script ‘Example’ in the directory ‘s:’, type in a ‘CLI’ window: ‘protect s:Example s add’. You have to start commands in a script with their full path! You don’t need the path if you use internal commands or commands in the ‘C:’-directory.

2.1.2.4 The Sliders ‘Hours’/ ‘Minutes’

Set the interval time, at which the command/ script ‘Interval’ will be executed regularly. You have to set the minutes and hours seperately. If you set the slider ‘Hours’ to 0 and the slider ‘Minutes’ to 15, the command/ script will be executed every fifteen minutes. You may change these two values only if you selected ‘Cron Table & Interval’ or ‘Interval’ at the gadget ‘Type’, otherwise the two sliders will be ghosted (see Section 2.1.2.1 [The Gadget ‘Type’], page 15).

2.1.3 The Page ‘Special’

You may select some files here that will be executed at the given points of time. The same functions may be achieved using a CronTable entry, but this page is provided for the following two reasons: First the compatability to the old versions and second to enable you to test and use some functions in a fast and simple way.

This page is shown if you carry out one of the following actions on the graphical user interface:

• Press the gadget ‘Special’

• Select the menu ‘Pages⇒Special’

• Press the keys AMIGA 2

• Press the keys ALT <ARROW RIGHT>, while you are on the page ‘Timer’

• Press the keys ALT <ARROW LEFT>, while you are on the page ‘Global Statistics’

When you start TimeGuardian for the first time, you will find the string gadgets empty. Otherwise you will see the last saved configuration.

2.1.3.1 The String Gadget ‘Onceaday’

You may select a file here that will be executed once a day. The file will be executed only once a day regardless of the time the computer is switched on. If the computer is powered on at midnight, it will be executed right past midnight. This entry is not usable for polling at your mailbox once a day because the point of time when this will happen is not fixed. It is intended for commands which you don’t want to execute from your ‘Startup-Sequence’ each time your computer boots. Once a day you can make a backup of important files or update your database for a fast file search.

If you press the gadget right of the string gadget, a file requester will pop up in which you may easily select the desired file. You may choose an executable or a script in ASCII format. If you want a script to be executed, the ‘S-flag’ has to be set, for example, the script ‘Once_a_day’ in the drawer ‘S:’. Enter ‘protect S:Once_a_day s add’ in a CLI to set this flag. You have to start commands in a script with their full path! You won’t need the path if you use internal commands or commands in the ‘C:’-directory.

A sample script may look like this:

     ;Script once a day
     dir all sys: > T:.directorytree ;for fast file search
     copy T:.directorytree sys:
     delete T:.directorytree

The commands will be automatically started as a background task. You won’t have to enter anything like ‘run < nil: > nil: Command’. Before adding a command line to a script you should execute it in a ‘Shell’,so you can be sure that it works in the intended way. In case you get problems running the command from the script, you may redirect the output to a file: ‘Command > Sys:.logfile’. Read the file ‘Sys:.logfile’ with a text viewer or an editor to check what went wrong (you may check this file with ‘type Sys:.logfile’ in a ‘Shell’, too).

2.1.3.2 The String Gadget ‘Onceaweek’

You may select a file here that will be executed once a week. The file will be executed only once a week regardless of the day of the week the computer is switched on.

2.1.3.3 The String Gadget ‘Onceamonth’

You may select a file here that will be executed once a month. The file will be executed only once a month regardless of the day the computer is switched on.

2.1.3.4 The String Gadget ‘Onceayear’

You may select a file here that will be executed once a year. The file will be executed only once a year, regardless of the point of time at which the computer was switched on for the first time in a certain year. If the computer is running at the turn of the year, it will be executed right post midnight. You could use this entry to copy the files that the cron program produced to a different directory.

2.1.4 The Page ‘GlobalStatistics’

This page is shown if you carry out one of the following actions on the graphical user interface:

• Press the gadget ‘Global Satistics’

  • Select the menu ‘Pages⇒Global Statistics’

• Press the keys AMIGA 3

• Press the keys ALT ARROW RIGHT, while you are on the page ‘Special’

• Press the keys ALT ARROW LEFT, while you are on the page ‘Daily Statistics’

A table will be displayed on this page where you may see at which days of the current logfile the computer was working and how long. While controlling different projects with different configurations the times and dates shown correspond to the selected configuration. You may move around in the upper field of the page like follows:

• Press the TAB key and use the keys CURSOR UP or CURSOR DOWN: Each time you press one of the keys the bar moves up or down a day.

• Click on the desired day with your mouse.

• Move the proportional gadget to the right side of the Listview and then click on the desired day with your mouse.

• Click on the gadgets next to the proportional gadget and then choose the desired day.

If the desired day has been highligted as mentioned above you should activate the page ‘Daily Statistics’ in one of these ways:

• Press the RETURN key (the highlighted day will be shown)

• Doubleclick on the desired day (this will also work if no day has been selected yet)

At the bottom you will see two buttons. By clicking on them you may pop up as information window:

• Statistics:

A window will be opened which displays detailed information on the global runtime, maximum and minimum, furthermore on the startups/resets and onoff-cycles. The text lines are written on alternating background colors. To get this effect which makes it easier to read the table choose different colors or greyscales for the pens ‘Halfshine’ and ‘Halfshadow’ in the preferences program of ‘MUI’.

• Graphics:

A graphics window will be opened. This window has not been finished yet in the current release. To be able to realize all planned functions the next versions will need ‘MUI 2.2’!

2.1.5 The Page ‘DailyStatistics’

This page is shown if you carry out one of the following actions on the graphical user interface:

• The gadget ‘Daily Satistics’

  • Select the menu ‘Pages⇒Daily Statistics’

• Press the keys AMIGA 4

• Press the keys ALT ARROW RIGHT, while you are on the page ‘Global Statistics’

• Press the keys ALT ARROW LEFT, while you are on the page ‘Timer’

This page contains three main areas. In the uppermost you may select which information will be shown in the middle of the page:

− OnOff: This will show when the computer was switched on, how many resets it had, and at what time it was switched off.

− Starts: The times when your computer had a reset or was turned on will be displayed here.

In the downmost area you’ll see a summary of the selected day. If you cannot see all entries together, you may move the proportional gadget the same way as on the page ‘Global Statistics’. If you want to switch between the two views ‘OnOff’ and ‘Starts’, you may press the SPACE bar. Furthermore you may use the keys ALT ARROW UP/DOWN to browse through the days. The active day will be changed on the page ‘Global Statistics’, too.

2.1.6 The Gadgets ‘Save’/ ‘Use’/ ‘Quit’

The Gadget ‘Save’

If you press the gadget ‘Save’ or the corresponding key-shortcut, the program will save the current preferences. The new configuration becomes active at once and will be used after a reboot (The preferences will be saved in the directory ‘ENVARC:’ and ‘ENV:’ with the name ‘TimeGuardian.config’). Contrary to the standard preferences programs TimeGuardian won’t quit by pressing on the ‘Save’ gadget.

The Gadget ‘Use’

If you press the gadget ‘Use’ or its corresponding key- shortcut, the preferences will be saved in the drawer ‘ENV:’ with the same name as above. The configuration will be used immediately, but will stay active only as long as the computer won’t be rebooted. If the computer boots, the configuration you saved with the gadget ‘Save’ will be used.

The Gadget ‘Quit’

You may leave the program by clicking on this gadget. If the preferences where changed but not yet saved, a requester will pop up. If you select ‘Quit’, the program will be left without saving. If you select ‘Cancel’ or press the RETURN key, you’ll get back to the program. You may save the preferences manually and leave the program afterwards. By pressing the ‘Use’ button, the changed configuration will be used and the program left. But the changed configuration will be lost after the next reboot.

2.1.7 The Online Help

The online help is a feature that’ll help you while using the graphical user interface. The ‘amigaguide.library’ has to be installed correctly (located in the drawer ‘Libs:’) if you want to use this feature. See Section 3.3 [Where Can I Obtain the Amiga-Guide?], page 42.

If this library has been installed, you may get help about an element of the graphical user interface by moving the mouse pointer over it (do not click) and pressing the HELP key afterwards. The corresponding text from the file ‘TimeGuardian.guide’ will appear.

2.1.8 The AREXX-Port

At the present version the program only supports the standard MUI commands:

     QUIT              SHOW              HELP
     HIDE              INFO

For more information see MUI.guide from the distribution of MUI.

2.1.9 What Do the Error Messages Mean ?

• ‘Failed to create Application!’

The program was not able to open its window on the active screen. This may happen if you don’t have enough free memory. Close some applications or reboot and try it again.

• ‘Cannot quit now,
still some ASL popups open!’

This message appears if you want to leave the program but still some file requester are open. Close them and try to quit the program again.

• ‘The configuration has been changed
and was not saved!’

This message reminds you that you haven’t saved the modified preferences. They will be lost if you don’t save before leaving.

• ‘TGCron is not running!’

The background program TGCron is not running yet, therefore the changes of the configuration will have no effect! If you want to use the new configuration, you have to start TGCron first.

• ‘The file already exists,
I will overwrite it!’

A file you want to save was already saved with the same name. If you select ‘Ok’ the old file will be overwritten. If you select ‘Cancel’ or press return you may save the file with a different name.

• ‘You have to define a Log File,
an empty string is not allowed!’

You didn’t enter anything in a string gadget. You have to enter a name for the file.

• ‘Invalid config-file: *’

The file * is not a valid config file; please select a different file.

• ‘Could not load config-file: *
I will use defaults instead!’

The file * could not be opened correctly while starting TimeGuardian. The program will use the default values. Change the configuration to suit your needs and press ‘Save’ to correct the error.

• ‘Could not open scheduler window!’

There was not enough free memory available on your system to open the scheduler window. Free some memory and try again.

• ‘This path does not already exist!
I will create it!’

You entered a non existing path in the string gadget. You may create it by pressing ‘OK’.

2.2 The Program TGScheduler

TGScheduler isn’t an independent program, it’s a part of TimeGuardian. The following description does not refer to an independent program. The scheduler may be used to create a CronTable in a very easy way. You don’t need to notice the very cryptic syntax of the CronTable and you may try out your generated event before you store it. If you want to invoke the scheduler select on the page ‘Timer’ (see Section 2.1.2 [‘Timer’], page 15) one of the ‘Edit’ buttons. Use your mouse or the equivalent short cut. If the corresponding string gadget already contains a file, it will be loaded into the scheduler, otherwise an empty CronTable will be created. TGScheduler consist of several windows. After startup you will be on the main window.

2.2.1 The Main Window

Whether the string gadget contained a file or not, it was loaded or an empty listview will appear. You may manipulate existing tables here. By clicking on the close-gadget you will exit from the scheduler without any security requesters, even if you changed something in the active table. If you already named the current table (by saving it) or you loaded an already existing file, the filename will appear in the titlebar of the main window. The length of the complete path and filename is limited to 40 characters, if it will be longer than 40 characters the middle of the path will be replaced by …

2.2.1.1 The ListView ‘EventList’

This listview will show the current table you are working on. The buttons right beside the listview will act to the highlighted entry. If you want to activate an entry you may click it once with your mouse or select it with the cursor keys. After that it will be highlighted. If there are no entries in the list you may only select the button ‘New’, all other buttons will be ghosted.

2.2.1.2 The Gadget ‘New’

By pressing this button you may create a new entry for the list left to it. It will be entered on top of an empty list or after the highlighted entry. A requester will pop up in which you may select the type of your new entry. There are currently five different types you may choose from:

• ‘Command’: A command will be executed by the cron.

• ‘Comment’: Those entries contain no information for the cron, they will help you to enter some notes or separate entries for different project, etc. . As they are not important for the cron, you cannot enter time values here.

• ‘Reminder’: The cron will invoke the requester/alarm-module of TimeGuardian. A requester will pop up, containing the text you have entered before, to remind you of an important event.

• ‘Reminder & Beep’: The cron will invoke the requester/alarm-module of TimeGuardian. A requester will pop up, containing the text you have entered before, to remind you of an important event. Furthermore your screen will flash for a short moment.

• ‘Alert’: The cron will invoke the requester/alarm-module of TimeGuardian. An alert will occur, containing the text you have entered before, to remind you of some important event. But you should be very careful using those alerts, as the whole multitasking system will be halted as long as the alert stays active.

When you have choosen one of these types, the window ‘Event Input’ will pop up next, see also Section 2.2.2 [‘Event Input’], page 27.

2.2.1.3 The Gadget ‘Clone’

This button allows you to duplicate the currently active entry. The copy will appear below the active entry.

2.2.1.4 The Gadget ‘Change’

By clicking on the ‘Change’ button, the currently active entry will be transfered to the editor. You will get the same result by double clicking on an entry in the listview or by pressing the RETURN key while your desired entry is highlighted.

2.2.1.5 The Gadget ‘Up’

This button allows you to move the active entry one position up. If it is already at the top of the listview, nothing will happen. The position of an entry in the CronTable has no meaning for the cron. But you may sort your events to make it easier to read the CronTable.

2.2.1.6 The Gadget ‘Down’

This button allows you to move the active entry one position down.

2.2.1.7 The Gadget ‘Remove’

By clicking on this button you may remove the currently active entry from the table. There will be no security requester, be careful.

2.2.1.8 The Gadget ‘Open’

This button allows you to load a new table into the scheduler. If the old table has been changed and was not saved, a security requester will pop up and remind you on this fact.

2.2.1.9 The Gadget ‘Save’

You may use this button to save the currently visible table with the name given in the titlebar of its window. There won’t be a security requester. If there will be no name defined in the titlebar, a requester will pop up in which you may enter a path and name.

2.2.1.10 The Gadget ‘SaveAs…’

By clicking on this button you may save the current table with a new name. If the selected file already exists a security requester will pop up, asking if you really want to overwite the file.

2.2.1.11 The Gadget ‘Clear’

This button may be used to clear the whole table. If you have changed the current table, a security requester will appear. Otherwise it will be deleted without any interrogation. The name of the table will be kept.

2.2.1.12 The Gadget ‘Exit’

This button brings you back to the program TimeGuardian. If you changed something at the current table a security requester will pop up. If you ‘Cancel’ the requester, you will get back to the scheduler. If you ‘Exit’ from it, you will be back to TimeGuardian without saving the table. The middle button alows you to save your data and exit after that to TimeGuardian.

2.2.2 The Window ‘EventInput’

Now you are in the part of the program where you may select when a certain event will happen. The upper window will be always the same regardless which type of event you are working on. Its main purpose is to choose WHEN your event will take place. WHAT will happen may be selected with the button at the left top and the second window. The second window will be different for each type of event. If you want to create a CronTable by hand using a texteditor, refer to Section 2.2.7 [‘CronTable-Syntax’], page 33 for a detailed description of its syntax.

2.2.2.1 The Gadget ‘Type’

This button shows you which type of event you are currently working on. All types may be converted into a ‘Comment’ and all comments may be reconverted into their former type. Furthermore the three types ‘Reminder’, ‘Reminder & Peep’ and ‘Alert’ may be converted into each other. You won’t be able to convert a ‘Reminder’ to an ‘Alert’, because an ‘Alert’ is limited to 78 characters and 20 rows, the size of a ‘Reminder’ depends only from your screen resolution.

2.2.2.2 The Gadget ‘Special’

This button influences the behavior of the event. It defines what will happen after a event has become active:

• Standard: Nothing special will happen. The event will be executed at the predefined points of time.

• Once a day: The event will be executed at the predefined points of time, but only once a day.

• Once a week: The event will be executed at the predefined points of time, but only once a week.

• Once a month: The event will be executed at the predefined points of time, but only once a month.

• Once a year: The event will be executed at the predefined points of time, but only once a year.

• Use only once: The event will be executed at the predefined point of time, afterwards it will be removed from the CronTable.

For example I am using an entry with ‘once a week’ and ‘* * *’ for the time values, all month enabled and Sat and Sun (weekend), which reminds me to make a backup. The reminder will pop up always when I start my computer for the first time at the weekend. A ‘once a day’ reminder may be used to remind you for example of someones birthday or that her/his birthday will come soon.

2.2.2.3 The String Gadget ‘Minutes’

You may enter in this stringgadget at which minutes the event will happen. Enter the string like described at Section 2.2.7 [‘CronTable-Syntax’], page 33 or click on the button ‘Edit 1’ right beside the gadget to enter it using the help window ‘Minutes’, see Section 2.2.6 [‘Minutes’], page 32.

2.2.2.4 The String Gadget ‘Hours’

You may enter in this stringgadget at which hours the event will happen. Enter the string like described at Section 2.2.7 [‘CronTable-Syntax’], page 33 or click on the button ‘Edit 2’ right beside the gadget to enter it using the help window ‘Hours’, see Section 2.2.6 [‘Hours’], page 32.

2.2.2.5 The String Gadget ‘Days’

You may enter in this stringgadget at which days the event will happen. Enter the string like described at Section 2.2.7 [‘CronTable-Syntax’], page 33 or click on the button ‘Edit 3’ right beside the gadget to enter it using the help window ‘Days’, see Section 2.2.6 [‘Days’], page 32.

2.2.2.6 The Gadgets ‘Months’

You may use this field of buttons to enter at which months the event will happen. A certain month will be activated by pressing its appropriate button (recess it). The ‘Toggle 4’ button may be used to invert all entries, recessed (activated) buttons will become raised (inactivated) and vice versa.

2.2.2.7 The Gadgets ‘Dayofweek’

You may use this field of buttons to enter at which days of the week the event will happen. A certain day will be activated by pressing its appropriate button (recess it). The ‘Toggle 5’ button may be used to invert all entries, recessed (activated) buttons will become raised (inactivated) and vice versa.

2.2.2.8 The Gadgets ‘Edit’

A window will pop up which allows you to enter an appropriate string for the string gadget. For a detailed description of the windows elements refer to Section 2.2.6 [The Window ‘Minutes- Hours-Days’], page 32.

2.2.2.9 The Gadgets ‘Toggle’

You may use these two buttons to simply invert the state of the buttons left beside them. All active buttons will become inactive and vice versa.

2.2.3 The Window ‘Comment’

This window will appear if you select the event-type ‘Comment’ from the cycle button at the left top of the ‘Event Input’ window. Furthermore the window where you may enter the time values for an event will become ghosted.

The String Gadget ‘Comment’

You may enter a comment text here which will appear in the CronTable.

The Gadget ‘Use’

By clicking on this button the text of the string gadget left beside it will be entered into the CronTable. If you don’t want to enter this text, click on the ‘close-gadget’ of the ‘Event Input’ window to get back to the main window without any changees.

2.2.4 The Window ‘Command’

This window will appear if you select the event-type ‘Command’ from the cycle button at the left top of the ‘Event Input’ window. Furthermore the window where you may enter the time values for an event will become active.

The String Gadget ‘Arguments’

Enter the arguments here for the command you entered below.

The String Gadget ‘Command’

You must enter the path and name of the command which should be started by the cron utility as a background task. If you do not remember the exact path, use the button right beside the stringgadget to pop up a file requester.

The Gadget ‘Test’

This button allows you to test your command or script, exactly the same will happen when the cron utility starts it later on.

The Gadget ‘Use’

By clicking on this button the command left beside it will be entered into the CronTable. If you don’t want to enter this command, click on the ‘close-gadget’ of the ‘Event Input’ window to get back to the main window without any change.

2.2.5 The Window ‘Reminder-Reminder&Beep-Alert’

You may enter the text in this window which will occur in your Reminder, Reminder & Peep or Alert. All windows for the three event types will look like the same and therefore are described here together. You will see a listview which shows you the actual text entries, as same as on the main window of the scheduler. Below the listview you will see a stringgadget which allows you to enter your desired text to the listview. Together with the buttons right beside the listview you get a small text editor to create your events.

The Gadget ‘New’

Use this button to append a new textline to the listview. The text will always be appended after the last entry of the listview, regardless which entry has been activated by the listview-cursor. The stringgadget will be activated and you may enter the new text line there, after pressing the RETURN key, the line will be automatically appended to the listview. While the stringgadget is active, you have to press the AMIGA key in conjunction with the underlined character to select the button.

The Gadget ‘Clone’

By clicking on this button the highlighted entry will be copied and appended at the end of the list.

The Gadget ‘Up’

Use this button to move the highlighted entry one position up.

The Gadget ‘Down’

Use this button to move the highlighted entry one position down.

The Gadget ‘Remove’

Use this button to remove the highlighted entry from the list. There will appear no security requester before deleting it.

The Gadget ‘Test’

This button allows you to test your reminder or alert, exactly the same will happen when the cron utility starts it later on. If you are using an EGS-screen it may happen that you won’t see the alert. You won’t be able to move your mouse pointer as the alert will be displayed on a background screen. The only way to get rid of the alert will be clicking on the right mousebutton. This is a problem of the EGS-system and we are not able to influence that. The only solution will be to use no alerts if you get problems with EGS.

The Gadget ‘Use’

By clicking on this button the current event will be entered into the CronTable. If you don’t want to enter this event, click on the ‘close-gadget’ of the ‘Event Input’ window to get back to the main window without any change.

2.2.6 The Window ‘Minutes-Hours-Days’

All of the three windows will look like the same and therefore are described here together. The only difference between them are their title bars and the ranges of their sliders.

The Radiobutton ‘Type’

Use these radio buttons to select which of the sliders you want to become active.

• Always: None of the sliders will become active, only the ‘Replace’ button will be activated. ‘Always’ means that the event will be executed every minute (hour or day).

• Range: You may use the sliders ‘Begin’ and ‘End’ to define a range of minutes (hours or days) when your event will be executed by the cron utility.

• Single: You may select a single minute (hour or day) when your event will be executed by the cron utility.

The Slider ‘Minute’/ ‘Hour’/ ‘Day’

This slider allows you to select a single point of time.

The Slider ‘Begin’

This slider allows you to set the beginning of a range.

The Slider ‘End’

This slider allows you to set the end of a range.

The Gadget ‘Replace’

The ‘Actual value’ will be replaced by the currently choosen point of time or range by clicking on this button.

The Gadget ‘Add’

The choosen point of time or range will be appended to the currently visible value (‘Actual value’). Simplifications will be automatically performed by the program.

2.2.7 The CronTable-Syntax

An example file might look like this:

# TimeGuardian CronTable
#
#55 23 * * * RequestChoice TimerRequest "It is 23:55 now!" "What?!"
#
59 19 * * 1-5 s:News
#
0,15,30,45 * * * * "newshell con:82/175/550/90/UpTime from batch:saytime"
#
R 55 23 * * * "It is 23:55 now !"
#

First of all I want to say that a command line must not contain more than 450 characters. This results of some Amiga- and ‘TimeGuardian’- specific restrictions. If you need longer commands you should use a small script for that.

If the 1st character of a line is ‘#’ (or ‘;’), the line will be completely ignored. You may use this to add comments to the file or to disable a commandline temporarely. This is shown in the third line. The command ‘RequestChoice’ won’t be executed.

In order to execute a file at a certain time, the line in the file must look like the following example:

‘[Type] <Minute> <Hour> <Day> <Month> <Day_of_week> [Key] <"Text">|<Path/<Command>>’.

The decision, whether a command will be executed or not, is made by a AND- combination of the five time parameters. This means that the command will only be executed if all five parameters match.

A detailed description of the different samples, set in acute parenthesis, is following here. Some characters have a certain meaning:

− ‘<>’:

The parameter in acute parenthesis has to be specified. − ‘|’:

The vertical bar seperates alternative parameters which may be used or not. − ‘[]’:

The parameter in angular parenthesis may be used if you want to. − ‘…’:

Three periods indicate that the preceding parameter may be used multiple times.

• ‘[Type]’

This is an enhancement of the Un*x syntax which provides you the following possibilities:

‘[#|;|R|B|A]’

If you don’t enter one of these parameters the rest of the line will be taken as a command. ‘#’ and ‘;’ indicate a comment line and will be ignored by the cron. The parameters ‘R’, ‘B’ and ‘A’ indicate a so called reminder or alert. The <"Text"> (see below) will be displayed. These single characters are the abbreviations for: R = reminder B = reminder & beep A = alert A reminder is a system requester, which displays the given text, you may use them to remind you on important events (e.g. birthdays). An alert uses a special system screen.

• ‘<Minute>’

The complete syntax looks like this:

‘<*|Min[[,Min]|[,Min-Min]. . .]|Min-Min[[,Min]|[,Min-Min]. . .]>’

The value for ‘Min’ has to be chosen from the period of 0 to 59. The following is a description of all possibilities:

1. ‘*’:

If you use an asterisk for this parameter, th command is executed every minute.

2. ‘Min’:

You may choose a certain point of time at which the command will be executed.

 3. ‘Min-Min’:

You may specify a period of time, during which the command will be executed. The first value for ‘Min’ has to be smaller than or equal the second value for ‘Min’.

 4. ‘<Min>,<Min-Min>,. . .,<Min>’:

You may specify multiple points and periods of time seperated by colons. The command will be executed at every specified moment and the specified periods of time.

Example: ‘0,5,10,15-20,30,45-50 * * * * Command’

This would start the command every full hour, every five, ten and 30 minutes after the full hour and during the period of 15 to 20 and of 45 to 50 minutes every minute after the full hour. The command will be executed every single day.

• ‘<Hour>’

The complete syntax looks like this:

‘<*|Hour[[,Hour]|[,Hour-Hour]. . .]|Hour-Hour[[,Hour]|[,Hour-Hour]. . .]>’

The value for ‘Hour’ has to be chosen from the period of 0 to 23. For a more precise description of the parameter ‘Hour’, consult the parameter ‘Minute’ above. Both parameters have the same syntax.

Example: ‘* 0,3,6,9,12,15,18,21 * * * Command’

This would execute the command every three hours. Since an asterisk is used for the minutes, the command will be executed every minute of these hours.

• ‘<Day>’

The complete syntax looks like this:

‘<*|Day[[,Day]|[,Day-Day]. . .]|Day-Day[[,Day]|[,Day-Day]. . .]>’

The value for ‘Day’ has to be chosen from the period of 1 to 31. For a more precise description of the parameter ‘Day’, consult the parameter ‘Minute’ above. Both parameters have the same syntax.

Example: ‘* * 5-10,20-25 * * Command’

This would start the command from the fifth to 10th of a month and at the 20th to 25th of a month. Since asterisks are used for the other parameters, the command will be executed every single minute at these days!

• ‘<Month>’

The complete syntax looks like this:

‘<*|Mon[[,Mon]|[,Mon-Mon]. . .]|Mon-Mon[[,Mon]|[,Mon-Mon]. . .]>’

The value for ‘Mon’ has to be chosen from the period of 1 to 12. For a more precise description of the parameter ‘month’, consult the parameter ‘Minute’ above. Both parameters have the same syntax.

Example: ‘* * * 1,5-7 * Command’

This would start the command in the months from January to May and in July. It will be executed every single minute in these months!

• ‘<Day_of_week>’

The complete syntax looks like this:

‘<*|DoW[[,DoW]|[,DoW-DoW]. . .]|DoW-DoW[[,DoW]|[,DoW-DoW]. . .]>’

The value for ‘DoW’ has to be chosen from the period of 1 to 7. 1 corresponds to Monday, 7 corresponds to Sunday. For a more precise description of the parameter ‘Day_of_Week’, consult the parameter ‘Minute’ above. Both parameters have the same syntax.

Example: ‘* * * * 1-5 Command’

This would start the command from Monday to Friday every minute your computer is running.

• ‘[Key]’

The complete syntax of this enhancement looks like this:

‘[Da[y]|We[ek]|Mo[nth]|Ye[ar]|Ki[ll]]’

Only the first two characters will be checked (‘YE’ is equal to ‘year’). This check won’t be case sensitive, you even might mix up small and capital letters. A commandline which contains such a ‘key’ will be executed only once in the given range of time. After its execution the commandline will become commented and becomes reactivated at the beginning of a new time-period. This means for example that a script will be executed once a week (depending on its time parameters, see above), after that it will become deactivated and at the beginning of a new week reactivated. When the time parameters become valid, it gets executed again. The ‘Kill’ ‘Key’ indicates a special event, after it has become valid the commandline will be removed from the CronTable. Here are the meanings of the ‘Keys’: ‘Day’ : will be executed once a day and reactivated at the beginning of a new day ‘Week’ : will be executed once a week and reactivated at the beginning of a new week ‘Month’ : will be executed once a month and reactivated at the beginning of a new month ‘Year’ : will be executed once a year and reactivated at the beginning of a new year ‘Kill’ : gets removed after a signle execution

• ‘<<"Text">|<Pfad/<Befehl|Skript>>>’

You have to enter the command or script here that is supposed to be executed. You always have to use the complete path. In the above example, in line seven, the command ‘newshell’ would need no path, as it this is an internal command which is not loaded from any data media. System commands which are located in the ‘C:’ drawer also won’t need a path. All other commands will.

If you selected a reminder/alert by using ‘R’, ‘B’ or ‘a’ as first character, you have to enter the text quoted. A new line has to be entered as ‘*N’.

• examples:

     1. ‘* * * * * "dir >> t:test sys:tools"’

This command would be executed every minute.

     2. ‘0,30 8-16 * * 1-5 s:Gong’

This script would be executed Mondays to Fridays from eight a.m. to four o’clock p.m. every full hour and every half hour.

     3. ‘0 15 24 12 * execute "s:Christmas"’

This script would be executed at three o’clock p.m. at the 24.th of December.

     4. ‘0 20 15,16 4 7 s:Example’

This script would be executed at the 15th and 16th of April at eight o’clock p.m. (if this date is a Sunday). Of course, two successive days can’t be both Sundays, this example is just used to illustrate the AND- combination.

     5. ‘R 55 23 * * * "You should better*Ngo to bed now!"’

At 23:55 you will be sent to bed by your computer.

     6. ‘* 18-22 * * * Day s:Mailbox’

Regardless when you switched your computer on for the first time this day, if it is running during 18-22 o’clock it will start the mailbox script.

If you want to start scripts, the ‘S- flag’ of the files has to be set (to do this with the script ‘News’ which is in the directory ‘S:’, type the following in a ‘CLI’: ‘protect s:News s add’). The second way to start a script is to use the command ‘execute’ as shown in the third example (you don’t have to set the ‘S- flag’ here). You have to start commands inside scripts with their full path! You won’t need the path, if you use internal commands or commands in the ‘C:’-directory. If you have any problems with commands, because they are not working properly, check the commands for spaces. Try quoting the part of the command including spaces. Test the commands you want to use in a ‘Shell’ before you enter them to a script.

2.3 The Program TGCron

After setting up your preferences with TimeGuardian, you should start TGCron. The program is a so called ‘Commodity’, please refer to your manual for the operating system for further information. According to your setup, the program will execute the appropriate programs and scripts and store the runtime information of your computer. Its CPU usage is very low. While waiting for the next event it will use no CPU power. CPU power will only be used during startup and when it’s looking for an event or writing some information to disk and apart from that each minute for a short stretch of time.

2.3.1 What Does TGCron Do?

TGCron was designed to stay in memory all the time and run as a background task. It will execute user defined events at predefined points of time. This means on the one hand that script files will be executed and requester or alerts will be shown to remind you about important events, on the other hand it will store information about the runtime and the time your system was booted. The precision for these informations may be preset in TimeGuardian. It is very important to configure TGCron according to your personal environment, so that it will be able to handle your events. How ythis should be done, see Section 2.1 [The program TimeGuardian], page 5. As the program stores (after predefined intervals) information to your harddisk, it is important not to do a reset at these points of time. It is possible that you would get a corrupted file on your harddisk, but that will be corrected during your next startup. (This happened just once during a period of 8 month on my system) To be safe don’t do a reset at any full minute (:00) or remove TGCron before you do a reset. All in all you don’t have to worry about that as it is not dangerous!

2.3.2 How May I Get Information About TGCron

If you want to get further information about TGCron, please enter the following from the CLI (replace ‘<path>’ by the directory you have installed the package to): ‘<path>/TGCron’ There are two different messages possible, depending on whether TGCron has already been started or not.

1. TGCron has already been started:

    ‘TGCron v1.50 (5.1.1995) by G.Körner/J.Matern
    use -r option to remove. . .’

2. TGCron is not yet running:

    ‘TGCron v1.50 (5.1.1995) by G.Körner/J.Matern
    use -i option to install. . .’

You may also get information about the revision and the compilation date by using the ‘version’- command. Enter the following commandline: ‘version full <path>/TGCron’

It should read: ‘TGCron v1.50 (5.1.1995)’.

If this does not happen, you are definitely reading the wrong documentation. Furthermore you may use the ‘Commodity Exchange’ program of you workbench to display information on TGCron.

2.3.3 How May I Start TGCron?

If you didn’t choose the automatic startup option during installation, there are two different ways to start TGCron by hand:

1. Start from CLI:

To start from CLI please enter the following: ‘<path>/TGCron -i’ As TGCron does not detach from your CLI, you have to use the ‘run’ command to get your shell back after startup as follows: ‘run < nil: > nil: <path>/TGCron -i’. Replace <path> by the directory the TimeGuardian package was installed to.

2. Workbench startup: If you want to start TGCron from your Workbench, just doubleclick its icon.

If you try to start the program while it is already running, you will get the following results:

− At the CLI:

You will get the message: ‘TGCron is already running’ Indicating that TGCron is already running and may not be restarted.

− At the workbench:

A requester will pop up, asking you: ‘Do you want to remove TimeGuardianCron?’

If you want to remove it, click on ‘Yes’ or press RETURN. Choosing ‘No’ or pressing ESCAPE will not affect TGCron and it will keep on running. Regardless of your choice it won’t be started again!

2.3.4 How May I Stop TGCron?

If TGCron is already running, you have three options to remove it:

1. From CLI:

Please enter the following command: ‘<path>/TGCron -r’ Replace <path> by the directory the TimeGuardian package was installed to. After tahat you will get the message: ‘TGCron will be removed now!’. The program will be removed from memory at once.

2. At the Workbench:

Just doubleclick its icon. A requester will pop up, asking you: ‘Do you want to remove

TimeGuardianCron?’

If you want to remove it, click on ‘Yes’ or press RETURN. Choosing ‘No’ or pressing ESCAPE will not affect TGCron and it will keep on running. You won’t get any further messages, but just as removing it from CLI, it will quit at once.

3. You may use the ‘Commodity Exchange’ program of your workbench to remove TGCron from memory.

2.3.5 What Do the Error Messages Mean?

You may get the following error messages from TGCron:

• ‘Not enough free memory!’

You have not enough free memory in your system. TGCron had to quit.

• ‘Invalid .config file. Use TimeGuardian to create a new one!’

TGCron tried to read data from the file ‘env:TimeGuardian.config’, but it was changed or corrupted and is not valid any more. Start TimeGuardian, enter a new configuration, and store it with the ‘Save’ button.

• ‘Could not open env:TimeGuardian.config!
Use TimeGuardian to create it’

Start TimeGuardian, enter your configuration and store it with the ‘Save’ button.

• ‘Could not open locale, please check configuration!
Using english instead’

You have choosen ‘localized’ in the preferences program but the cron couldn’t find the corresponding catalog.

• ‘Your evaluation time has expired for today,
Please consider registering !!’

You have reached the end of your evaluation time for TGCron as an unregistered user. You won’t be able to restart it again on this same day. If you want to use the package for a unlimited amount of time, please become a registered user, refer to Section 1.5 [How can I register for TimeGuardian?], page 3 for detailed information.

• ‘CronParser ERROR:
Wrong number of Arguments in CronTable line:
CronTab_line
Please correct it!’

The displayed ‘CronTab_line’ from one of your choosen CronTables contains too much or not enough entries. For detailed information on the CronTable, refer to Section 2.2.7 [CronTable-Syntax], page 33.

• ‘CronParser ERROR:
Bad entry '*' in CronTable line:
CronTab_line
Please correct it!’

The entry ’*’ in the ‘CronTab_line’ is not valid. For detailed information on the CronTab, refer to Section 2.2.7 [CronTable-Syntax], page 33.

• ‘CronParser ERROR:
Value * out of range (*. . .*)
Please search for commandline and fix it !’

The number after ‘Value’ is not in the range displayed in parenthesis. For detailed information on the CronTab, refer to Section 2.2.7 [CronTable-Syntax], page 33.

• ‘CronParser ERROR:
Range *-* out of range (*. . .*)
Please search for commandline and fix it !’

The range ‘*-*’ has to be in the range that is shown in parenthesis. For detailed information on the CronTable, refer to Section 2.2.7 [CronTable-Syntax], page 33.

3 Where Do I Get the Support Programs?

3.1 Where May I Obtain MUI?

You may get MUI directly from the author, where you get a registered version (see Section 5.1 [Where can I register for MUI?], page 49). This allows you to use all features of ‘MUI’ and store its configuration permanently. The unregistered version is available on many PD-series an via

‘Aminet’.

If you think MUI is not worth installing, because of one single program, you may be right. But the background program TGCron won’t use MUI at all. Only the preferences program will use it for its graphical user interface. So MUI will not be started everytime, but if you want to change the configuration. So you may install this package even on computers with memory, as you don’t need MUI all the time.

If you have MUI not installed yet, you absolutely have to do this before the installation of TimeGuardian, as the installation will be aborted otherwise. See Chapter 4 [How can I install TimeGuardian?], page 44, for further information.

3.2 Where Can I Obtain Installer?

For an easy installation of the program package you need the program Installer from C*mm*d*re. If this program is not installed on your computer, you may obtain it in several ways:

• Workbench 2.0/2.1/3.0 includes it

  • From Fish-Disk 870

• Via the distribution of MUI.

• Many distributions of commercial software contain it

3.3 Where Can I Obtain Amiga-Guide?

If you want to use the online help you’ll need the ‘amigaguide.library’ in your ‘LIBS:’-drawer (see Section 2.1.7 [The online help], page 22). You don’t need it to run the package TimeGuardian, but you won’t be able to use the online help feature.

Chapter 3: Where Do I Get the Support Programs? 43 The ‘amigaguide.library’ is on the Fish-Disk 870 and gets distributed with Workbench version 3.0.

4 How Do I Install TimeGuardian?

This chapter describes the installation of the package TimeGuardian. If you want to install other packages not included in this distribution (see Section 1.4 [What do I need to use TimeGuardian], page 2), look into the respective distributions to install them.

You have two possibilities to install the package TimeGuardian. You should use the first one:

1. Use the Installer script, provided with this package (the program Installer has to be in the search path e.g. ‘C:’). For a precise description of the script , see Section 4.1 [The installation with Installer], page 44. If you have not installed the Installer yet, see Section 3.2 [Where do I get the Installer?], page 42.

2. You may install the package manually, for a precise description on how to do this, see Section 4.2 [The installation withoutInstaller], page 46.

4.1 The Installation with Installer

Before you make an update, read the file ‘Update_to_1.2’! There you’ll find important hints on how to make an update. You have two choices to start the installation script:

1. Doubleclick on the icon ‘TG.install.deutsch’:

The installation will commence. The text will appear in german. If you want to use the German text please read the german documentation.

2. Doubleclick on the icon ‘TG.install.english’:

The installation will commence. The text will appear in english.

Next is a step by step description of the installation:

• At the beginning you may choose the user level for the installation. If you select ‘Novice’, you won’t be able to select anything else but the path, where you want to copy the programs to. All files necessary to work correctly will be copied and the preferences program will be started. Finally you’ll get a summary about what was saved to which location. To quit the installation you have to leave the preferences program. If you want to install the package press ‘Proceed With Install’. With ‘Help…’ you’ll get some information.

• If you select the user level ‘EXPERT’ you may choose whether you want to install the package (‘Install for Real’) or whether you just want to test the installation script (‘Pretend to

Install’).

Furthermore you may choose, whether all actions are logged or not. You may write the file ‘Sys:TGInstall.e.log’ to disk (‘Log File’), print the results (‘Printer’) or suppress a log file (‘None’). The installation is continued with ‘Proceed’.

• The installation will check, whether MUI was installed in the correct version. If this was not so, the installation will be aborted.

• The installationprogramm checks now, if you have already installed a version of TimeGuardian. The installation tries to find the old installationpath. When you haven’t changed the old installation procedure this should work correctly. A message with the found path will appear. A running TGCron will be stopped. This is necessary to make a proper update.

• Now you may choose what you want to install.

The first gadget means, that only the necessary programs and config files are copied. The second gadget symbolizes the documentation.

• If the first gadget was activated:

− You will be asked, if the background program TGCron should be started every time the

computer is booting. − If you answered the last question with ‘Yes’, the program will check whether this is possible

on your system. − If multiple choices exist for starting the background program, you may select which of

them you prefer. If you select ‘From CLI (user-startup)’, the file ‘S:user-startup’ will be changed in an appropriate way. If you select ‘From WB (WBStartup)’, the icon of the progam TGCron is copied to the drawer ‘Sys:WBStartup’. Users who work mainly with the workbench should use the second way. Users making an update have to keep in mind to delete the old entry in their ‘userstartup’, when you selected the CLI- start at a former installation.

− Now you may choose where the programs shall be copied to. The installation will make a proposal. If you want a new drawer for the package created, select ‘Make New Drawer…’, otherwise choose an existing one.

− You may continue with the button ‘Proceed’. The first files will be extracted from the

archive. − When you have registered this version of the package your keyfile will be copied now. When

you have an variable called ‘ENV:KEYPATH’ on your system, this will be the destination. Otherwise the key is copied to ‘S:’.

− Even if you did not select the documents to be installed, the file

‘TimeGuardian.guide’ will be copied if the file ‘Libs:amigaguide.library’ is installed.

If this was not so, a message will appear that you won’t be able to use the online help.

• If the second gadget was selected:

− You can select which of the four files you want to install:

1. The file ‘TimeGuardian.asc’ which you may read with any text viewer or editor or print, if you like to.

2. The file ‘TimeGuardian.guide’ that you may read with AmigaGuide. This file contains the information for the online help. This file will always be copied, when the file ‘Libs:amigaguide.library’ is installed to your system.

3. The file ‘TimeGuardian.dvi’ that you may print or view, if you have installed TEX.

4. The file ‘TimeGuardian.ps’ that you may print with a Postscript printer. − For the ‘.asc’ and the ‘.guide’ file you can select a drawer. − The file ‘TimeGuardian.guide’ will only be installed when in the drawer ‘Libs:’ the file

‘amigaguide.library’ is found. Otherwise you’re informed, that you will not be able to use the online help.

− Now you can select a path for the ‘.tex’ file. − Now you can select a path for the ‘.ps’ file.

• If you have installed the programs, you may decide now whether you wish to start the preferences program TimeGuardian. Start the program by selecting ‘Yes’. Change the configuration to suit your needs and press the gadget ‘Save’ before you leave the program with the ‘Quit’ gadget. If you haven’t started the program yet, you’ll have to answer a message that you will have to start the preferences program later on. Select ‘Proceed’ then to leave the installation correctly.

• If you have left the preferences program or answered the message, the installation will be complete. Then the final message will appear.

• When you selected the option to start the Cron program every time your computer is booting, and you have left the preferences program with ‘Save’ TGCron is started.

4.2 The Installation without Installer

You should use this step by step installation only as an expedient when you can’t get the Installer program. Before you make an update, read the file ‘Update_to_1.2’! There you’ll find important hints on how to make an update. To install the package without Installer please follow these steps:

1. Open a Shell window (doubleclick the icon ‘Shell’ in the drawer ‘System’ of your boot partition).

2. Please enter ‘version libs:muimaster.library’. You should get this result:

‘libs:muimaster.library 7.973’. If you get a smaller number or ‘object not found’ you

have to install MUI version 2.0 or greater before you can continue.

3. If you want to install the package in a drawer that already exists, please enter ‘cd drawer’ (instead of drawer please use the name of the directory). If you want to copy the files to a new drawer you have to create it with the command ‘makedir drawer’, after that change to this drawer with ‘cd drawer’ (please use the name of the new directory instead of ‘drawer’ in the two command lines, e.g. TimeGuardian).

4. Please enter ‘echo > env:TimeGuardian.path drawer’ and

‘echo > envarc:TimeGuardian.path drawer’. Substitute drawer with the path you used above. You have to type the trailing ‘/’ or ‘:’!

5. Now put the disk with the package into any drive (if you have already copied the files to your

hard disk just enter: ‘assign TimeGuardian: sourcedrawer’, in which ‘sourcedrawer’ is the

drawer, in which the files on your hard disk are stored).

6. To copy the programs enter:‘TimeGuardian:Lhx/Lhx e TimeGuardian:bin/TGBins.lha #?’.

Some messages will appear, as to which files have already been decrunched.

7. If you want to copy the locale files (only German available at the moment) please enter:

‘copy TimeGuardian:Catalogs/deutsch/#? Locale:Catalogs/deutsch’. You should get a

message about a copied file.

8. If you want to copy the english documentation files please enter

‘TimeGuardian:Lhx/Lhx e TimeGuardian:doc/english/TGDoc.lha #? Help:english/’.
9. Please enter ‘copy TimeGuardian:env/#? envarc:’ and ‘copy TimeGuardian:env/#? env:’

now.

10. Please enter ‘copy TimeGuardian:s/#? s:’.

11. If the background program shall be started while booting, please enter:

− start from Workbench:

    ‘copy TGCron.info Sys:WBStartup’

Open the drawer ‘WBStartup’ on the Workbench and click at the icon ‘TGCron’. Activate the menu ‘Icons⇒Information…’ or press the keys AMIGA I. A window should pop up. Now enter in the string gadget ‘Default Tool:’: ‘path/TGCron’ (you have to replace path with the full path you copied the programs to). Leave the window by clicking on the gadget ‘Save’. or:

− start from user-startup:

    Add the following lines to the file ‘s:startup-sequence’ or ‘s:user-startup’: ‘run <

nil: >nil: path/TGCron’ (you have to replace path with the full path you copied the programs to). You may do this with the help of an editor.

12. If you want to start the preferences program from the same drawer as the standard preferences programs simply enter: ‘copy TimeGuardian.info Sys:Prefs’. You have to change the ‘Default Tool:’ as described above at step 10 (from Workbench). Enter the name

    ‘path/TimeGuardian’ instead of ‘path/TGCron’!

13. To use your personal configuration, start the program TimeGuardian and leave it by clicking on the gadget ‘Save’.

It may happen that you run into problems trying to install the program as described above. This could happen, if the assign ‘Help’ and the drawer ‘Help:english’ don’t exist. You may copy the documentation files to any other drawer you want. You have to change the file

‘Envarc:AmigaGuide/path’ and ‘Env:AmigaGuide/path’ in a way that the drawer in which you

copied the file ‘TimeGuardian.guide’ will be searched. E.g. add the line ‘dh0:docs’ if you copied the above file to the drawer ‘dh0:docs’.

5 What is MUI?

MUI is a program package for users and developers, that provides a graphical user interface with many features for the programmer and user. TimeGuardian is not able to run without MUI, to be more precise, the preferences program TimeGuardian! Therefore MUI has to be already installed or you have to do it before the installation of TimeGuardian. Where to obtain MUI, see Section 3.1 [Where can I obtain MUI?], page 42.

5.1 Where Can I Register for MUI?

This application uses MUI - MagicUserInterface \begin{matrix}c \\ ◯ \end{matrix} Copyright 1993/94 by Stefan Stuntz

MUI is a system to generate and maintain graphical user interfaces. With the aid of a preferences program, the user of an application has the ability to customize the outfit according to his personal taste.

MUI is distributed as shareware. To obtain a complete package containing lots of examples and more information about registration please look for a file called ‘muiXXusr.lha’ (XX means the latest version number) on your local bulletin boards or on public domain disks.

If you want to register directly, feel free to send DM 30.- or US-$ 20.- to Stefan Stuntz Eduard-Spranger-Strasse 7 80935 München GERMANY

Index 50

Index

Add, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Alert, window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 AREXX-Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Cancel, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Change, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Clear, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Clone, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Command, window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Comment, window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Cron Task Priority, slider . . . . . . . . . . . . . . . . . . . . . . . . . . 11 CronTable, Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Current, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Daily Statistics, page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Date Format, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Day of week, gadgets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Days, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Days, window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Default, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Description of the installation . . . . . . . . . . . . . . . . . . . . . . 44 Description, TGCron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Down, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Edit, gadgets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Error messages, TGCron . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Error messages, TimeGuardian. . . . . . . . . . . . . . . . . . . . . 23 Event Input, window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 EventList, listview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Exit, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Function, package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Gadget Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Gadget Cancel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Gadget Change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Gadget Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Gadget Clone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Gadget Date Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Gadget Down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Gadget Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Gadget Locale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Gadget New . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Gadget Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Gadget Quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Gadget Remove. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Gadget Replace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Gadget Save As... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Gadget Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Gadget Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Gadget Special . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Gadget Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Gadget Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Gadget Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Gadget Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Gadget Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Gadgets Day of week . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Gadgets Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Gadgets Month . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Gadgets Toggle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Global Statistics, page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Hours, slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Hours, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Hours, window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Increment, slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Information, about TGCron. . . . . . . . . . . . . . . . . . . . . . . . 38 Installation, with Installer . . . . . . . . . . . . . . . . . . . . . . . . . 44 Installation, without Installer . . . . . . . . . . . . . . . . . . . . . . 46 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Listview EventList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Locale, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Log History, slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Menu Preferences=>Log Path & Names . . . . . . . . . . . . 12 Menu Preferences=>LogFiles enabled? . . . . . . . . . . . . . 15 Menu, Edit=>Last Saved. . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Menu, Edit=>Reset to Defaults . . . . . . . . . . . . . . . . . . . . . 9 Menu, Edit=>Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Menu, Preferences=>Cron Setup . . . . . . . . . . . . . . . . . . . . 9 Menu, Project=>About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Menu, Project=>Iconify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Menu, Project=>Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Menu, Project=>Save as . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Menu, Project=>User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Menu, Settings=>Create Icons? . . . . . . . . . . . . . . . . . . . . . 9 Menus of TimeGuardian . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Minutes, slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Minutes, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Minutes, window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Month, gadgets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 MUI, about. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 New, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Once a day, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Once a month, string gadget . . . . . . . . . . . . . . . . . . . . . . . 19 Once a week, string gadget. . . . . . . . . . . . . . . . . . . . . . . . . 19 Once a year, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . 19 Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 OnOff, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Open, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Page Daily Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Page Global Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Page Special . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Page Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Preferences=>Log Path & Names, menu. . . . . . . . . . . . 12 Preferences=>LogFiles enabled?, menu . . . . . . . . . . . . . 15 Program description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Program TGScheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Program, TGCron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Program, TimeGuardian . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Programs, other . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Quit, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Radiobuttton Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Reminder & Beep, window . . . . . . . . . . . . . . . . . . . . . . . . . 31 Reminder, window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Remove, gadget. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Replace, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Runtime, string gadget. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Save As..., gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Save, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Save, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Shareware fee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Slider Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Slider Cron Task Priority . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Slider Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Slider End . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Slider Hours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Slider Hours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Slider Increment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Slider Log History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Slider Minutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Slider Minutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Slider Startuptime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Special, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Special, page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Start TGScheduler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Start TimeGuardian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Start, TGCron. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Starts, string gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Startuptime, slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Stop, TGCron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
String gadget Current. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
String gadget Days . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
String gadget Default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
String gadget Hours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
String gadget Log Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
String gadget Minutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
String gadget Once a day . . . . . . . . . . . . . . . . . . . . . . . . . . 18
String gadget Once a month . . . . . . . . . . . . . . . . . . . . . . . 19
String gadget Once a week . . . . . . . . . . . . . . . . . . . . . . . . . 19
String gadget Once a year . . . . . . . . . . . . . . . . . . . . . . . . . 19
String gadget OnOff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
String gadget Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
String gadget Starts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
String gadget Timer Interval . . . . . . . . . . . . . . . . . . . . . . . 17
TGScheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Timer Interval, string gadget. . . . . . . . . . . . . . . . . . . . . . . 17
Timer, page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Toggle, gadgets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Type, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Type, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Type, radiobuttton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Up, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Use, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Use, gadget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Window Alert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Window Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Window Comment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Window Days. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Window Event Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Window Hours. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Window Main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Window Minutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Window Reminder & Beep . . . . . . . . . . . . . . . . . . . . . . . . . 31
Window Reminder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Appendix A Registration Form

--------8<-------------------------------------8<-----------------
REGISTRATION FORM
Firm:              ___________________________________________
First name, Name:  ___________________________________________
Street:            ___________________________________________
Location:          ___________________________________________
Post code:         ___________
Country:           ___________________________________________
Telephone:         _____________
e-mail:            ___________________________________________
I want to become a registered user of the program package TimeGuardian
and therefore paid:
                 Germany       Europe      Rest of the
                                             World
----------------------------------------------------------
o Cash             o 20DM        o 20DM         o 15US$
                               o 15US$
----------------------------------------------------------
o Bank Draft       o 20DM
----------------------------------------------------------
o Eurocheque       o 20DM        o 20DM
                               o 15US$
----------------------------------------------------------
o Cheque           o 20DM        o 40DM         o 27US$
                               o 27US$
Please send the newest version of the above mentioned program package
and my personal key file to the address above.

_______________________________________________
   Location, Date                         Signature
--------8<-------------------------------------8<-----------------

Table of Contents

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1 What is TimeGuardian? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 The Features of TimeGuardian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.3 What Can I Do with TimeGuardian? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.4 What Do I Need to Be Able to Use TimeGuardian? . . . . . . . . . . . . . . . . 2 1.5 How Can I Register for TimeGuardian? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 The Programs of the Package TimeGuardian . . . . . . . . 5

2.1 The Program TimeGuardian. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 The Menus of the Program TimeGuardian . . . . . . . . . . . . . . . . 6 2.1.1.1 The Menu ‘Project⇒Open…’ . . . . . . . . . . . . . . . . . . 7 2.1.1.2 The Menu ‘Project⇒Save as…’ . . . . . . . . . . . . . . . 7 2.1.1.3 The Menu ‘Project⇒About’ . . . . . . . . . . . . . . . . . . . . 8 2.1.1.4 The Menu ‘Project⇒User’ . . . . . . . . . . . . . . . . . . . . . 8 2.1.1.5 The Menu ‘Project⇒Iconify’ . . . . . . . . . . . . . . . . . 9 2.1.1.6 The Menu ‘Edit⇒Reset to Defaults’ . . . . . . . . . . 9 2.1.1.7 The Menu ‘Edit⇒Last Saved’ . . . . . . . . . . . . . . . . . . 9 2.1.1.8 The Menu ‘Edit⇒Restore’ . . . . . . . . . . . . . . . . . . . . . 9 2.1.1.9 The Menu ‘Settings⇒Create Icons?’. . . . . . . . . . 9 2.1.1.10 The Menu ‘Preferences⇒Cron Setup’ . . . . . . . . 9

2.1.1.11 The Menu ‘Preferences⇒Log Path & Names’

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.1.1.12 The Menu ‘Preferences⇒LogFiles enabled?’

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.1.2 The Page ‘Timer’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.1.2.1 The Gadget ‘Type’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.1.2.2 The String Gadget ‘Default/ Current’ . . . . . . . . 16 2.1.2.3 The String Gadget ‘Interval’ . . . . . . . . . . . . . . . . . 17 2.1.2.4 The Sliders ‘Hours’/ ‘Minutes’ . . . . . . . . . . . . . . . . . 17

2.1.3 The Page ‘Special’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1.3.1 The String Gadget ‘Once a day’ . . . . . . . . . . . . . . . . 18 2.1.3.2 The String Gadget ‘Once a week’. . . . . . . . . . . . . . . 19 2.1.3.3 The String Gadget ‘Once a month’. . . . . . . . . . . . . . 19 2.1.3.4 The String Gadget ‘Once a year’. . . . . . . . . . . . . . . 19

2.1.4 The Page ‘Global Statistics’. . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.1.5 The Page ‘Daily Statistics’. . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.1.6 The Gadgets ‘Save’/ ‘Use’/ ‘Quit’. . . . . . . . . . . . . . . . . . . . . . . 21 2.1.7 The Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.1.8 The AREXX-Port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.1.9 What Do the Error Messages Mean ?. . . . . . . . . . . . . . . . . . . . 23

2.2 The Program TGScheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.2.1 The Main Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2.1.1 The ListView ‘EventList’ . . . . . . . . . . . . . . . . . . . . . 24 2.2.1.2 The Gadget ‘New’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2.1.3 The Gadget ‘Clone’. . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2.1.4 The Gadget ‘Change’. . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2.1.5 The Gadget ‘Up’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2.1.6 The Gadget ‘Down’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2.1.7 The Gadget ‘Remove’. . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2.1.8 The Gadget ‘Open’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2.1.9 The Gadget ‘Save’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2.1.10 The Gadget ‘Save As…’ . . . . . . . . . . . . . . . . . . . . . . 26 2.2.1.11 The Gadget ‘Clear’. . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2.1.12 The Gadget ‘Exit’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.2.2 The Window ‘Event Input’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.2.1 The Gadget ‘Type’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.2.2 The Gadget ‘Special’ . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.2.3 The String Gadget ‘Minutes’. . . . . . . . . . . . . . . . . . . 28 2.2.2.4 The String Gadget ‘Hours’ . . . . . . . . . . . . . . . . . . . . . 28 2.2.2.5 The String Gadget ‘Days’ . . . . . . . . . . . . . . . . . . . . . . 28 2.2.2.6 The Gadgets ‘Months’. . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.2.2.7 The Gadgets ‘Day of week’. . . . . . . . . . . . . . . . . . . . . 29 2.2.2.8 The Gadgets ‘Edit’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.2.2.9 The Gadgets ‘Toggle’. . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.2.3 The Window ‘Comment’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.2.4 The Window ‘Command’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2.2.5 The Window ‘Reminder- Reminder & Beep- Alert’. . . . . . 31

2.2.6 The Window ‘Minutes- Hours- Days’ . . . . . . . . . . . . . . . . . . . 32 2.2.7 The CronTable-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.3 The Program TGCron. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 2.3.1 What Does TGCron Do? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.3.2 How May I Get Information About TGCron . . . . . . . . . . . . . . 38 2.3.3 How May I Start TGCron? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.3.4 How May I Stop TGCron? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.3.5 What Do the Error Messages Mean? . . . . . . . . . . . . . . . . . . . . 40

3 Where Do I Get the Support Programs? . . . . . . . . . 42

3.1 Where May I Obtain MUI?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.2 Where Can I Obtain Installer? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.3 Where Can I Obtain Amiga-Guide? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4 How Do I Install TimeGuardian? . . . . . . . . . . . . . . . . . . . . 44

4.1 The Installation with Installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.2 The Installation without Installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5 What is MUI?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.1 Where Can I Register for MUI? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Appendix A Registration Form . . . . . . . . . . . . . . . . . . . . . . 53